
/* start /web-platform/scripts/web-platform/component/media-modal.js*/
window.SOE=window.SOE||{};window.SOE.MediaModal=(function(){'use strict';var YOUTUBE_FAILURE_RETRY_COUNT=3;var _numDots=5;var _dotBarAutosizeSettings=null;var _numVideoThumbs=6;var _didInit=false;var _youTubeInitStarted=false;var _youTubeInitFinished=false;var _downloadListFunc=null;var _filterFunc=null;var _originalUrl=null;var _imageInfo=null;var _youTubeVideos=null;function _updateDotPos(idx){var $allDots=$('#dotOverflowContainer .dot');var $visibleDots=$allDots.filter(':not(.filtered)');var pageIdx=Math.floor($visibleDots.index($allDots.eq(idx))/_numDots);$allDots.removeClass('active').eq(idx).addClass('active');$('#dotOverflowContainer').stop().animate({left:pageIdx* -$('#paginationDotContainer').width()},function(){$('.modalControl').removeClass('disabled');});_updateDownloadList(idx);_updatePermalink(idx);}
function _updateDownloadList(dotIdx){if(_downloadListFunc){_downloadListFunc(_imageInfo[dotIdx].userId,$('#mediaModalDownload ul').empty());}}
function _updatePermalink(dotIdx){if(_originalUrl&&window.history.replaceState){window.history.replaceState(null,document.title,_imageInfo[dotIdx].permalinkUrl);}}
function _autosizeDotBar(){if(_dotBarAutosizeSettings){var windowWidth=window.innerWidth||document.documentElement.clientWidth;var totalDots=parseInt($('#mediaModalHeader .mediaTotal').text(),10);var widestPossibleContainer=Math.floor((windowWidth*_dotBarAutosizeSettings.maxWidth)/_dotBarAutosizeSettings.dotWidth)*_dotBarAutosizeSettings.dotWidth;var allDotsWidth=totalDots*_dotBarAutosizeSettings.dotWidth;var finalDotBarWidth=Math.min(widestPossibleContainer,allDotsWidth);var visibleDots=(finalDotBarWidth/_dotBarAutosizeSettings.dotWidth);var allDotsVisible=(visibleDots>=totalDots);$('#media-modal .pagNavBtn').toggleClass('hidden',allDotsVisible);$('#paginationDotContainer').width(finalDotBarWidth);setDotCount(visibleDots);}}
function _init(){if(_didInit){return;}
_didInit=true;$('#media-modal').on('soe.updateDot',function(evt,dot){var $allDots=$('#dotOverflowContainer .dot');var $visibleDots=$allDots.filter(':not(.filtered)');$('#media-modal-image').attr('src',_imageInfo[dot].imageUrl);$('#mediaModalHeader .mediaNum').text($visibleDots.index($allDots.eq(dot))+1);_updateDotPos(dot);});$('#media-modal').on('soe.arrowClick',function(evt,dir){var $allDots=$('#dotOverflowContainer .dot');var $visibleDots=$allDots.filter(':not(.filtered)');var selectedVisibleDot=$visibleDots.index($allDots.filter('.active'))+1;var selectedDot;if(dir==='next'){if(selectedVisibleDot<$visibleDots.length){selectedVisibleDot++;}else{selectedVisibleDot=1;}}else if(selectedVisibleDot>1){selectedVisibleDot--;}else{selectedVisibleDot=$visibleDots.length;}
selectedDot=$allDots.index($visibleDots.eq(selectedVisibleDot-1));$('#media-modal-image').attr('src',_imageInfo[selectedDot].imageUrl);$('#mediaModalHeader .mediaNum').text(selectedVisibleDot);_updateDotPos(selectedDot);});$('#media-modal').on('click','.pagDot',function(){var idx=$('#dotOverflowContainer .pagDot').index(this);$('#media-modal').trigger('soe.updateDot',idx);});$('#media-modal').keydown(function(key){if(key.which===37){$('#media-modal').trigger('soe.arrowClick','prev');}else if(key.which===39){$('#media-modal').trigger('soe.arrowClick','next');}});$('.modalTraverse').on('click',function(){$('#media-modal').trigger('soe.arrowClick',this.getAttribute('rel'));});$('#media-modal').on('mouseenter','.pagDot',function(){var $this=$(this);var idx=$('#dotOverflowContainer .pagDot').index($this);var dotWidth=parseInt($this.outerWidth(true),10)/2;var dotLeft=$this.offset().left;var tooltip=$('#paginationImages');if(!tooltip.hasClass('hidden')){var tooltipWidth=parseInt(tooltip.outerWidth(),10)/2;tooltip.stop().animate({left:(dotLeft+dotWidth)-tooltipWidth},'fast');$('#paginationImgSlider').stop().animate({left:idx* -parseInt(tooltip.width(),10)},'fast');tooltip.show();}});$('#media-modal').on('mouseleave','.pagDot',function(){$('#paginationImages').hide();});$('.pagNavBtn').on('click',function(){var dotContainer=$('#dotOverflowContainer');var pageContainer=$('#paginationDotContainer');var pageWidth=pageContainer.width();var pages=Math.ceil(dotContainer.find('.dot:not(.filtered)').length/_numDots);var nextShift;var maxContainerShift=((pages-1)* -pageWidth);if(this.getAttribute('rel')==='next'){nextShift=parseInt(dotContainer.css('left'),10)-pageWidth;if(nextShift<maxContainerShift){dotContainer.stop().animate({left:0});}else{dotContainer.stop().animate({left:nextShift});}}else{nextShift=parseInt(dotContainer.css('left'),10)+pageWidth;if(nextShift>0){dotContainer.stop().animate({left:maxContainerShift});}else{dotContainer.stop().animate({left:nextShift});}}});$('#mediaModalFilter').on('click','.dropdown-menu a',function(e){e.preventDefault();if(_filterFunc){var $allDots,$visibleDots;var filterId=this.getAttribute('data-filter-id');$('#dotOverflowContainer .dot').each(function(dotIdx){$(this).toggleClass('filtered',!_filterFunc(_imageInfo[dotIdx].userId,filterId));});$allDots=$('#dotOverflowContainer .dot');$visibleDots=$allDots.filter(':not(.filtered)');$('#mediaModalHeader .mediaTotal').text($visibleDots.length);_autosizeDotBar();$('#media-modal').trigger('soe.updateDot',$allDots.index($visibleDots.eq(0)));}});$(document).on('hide.bs.modal','#media-modal.image-content',function(){if(_originalUrl&&window.history.replaceState){window.history.replaceState(null,document.title,_originalUrl);}
$(window).off('.mediaModal');_downloadListFunc=null;_filterFunc=null;_originalUrl=null;_imageInfo=null;});}
function _initYouTube(readyFn){var youTubePlayer;if(_youTubeInitFinished){if(readyFn){readyFn();}
return;}
if(readyFn){$(document).on('onYouTubeIframeAPIReady',function(){readyFn();});}
if(_youTubeInitStarted){return;}
_youTubeInitStarted=true;$(document).on('show.bs.modal','#media-modal.video-content',function(){if($('#media-modal .modal-video-playlist ul').is(':empty')){youTubePlayer=new YT.Player($('#media-modal .modal-video-replace').get(0),{width:'100%',height:'100%',host:'https://www.youtube-nocookie.com',playerVars:{autoplay:1,theme:'dark',color:'black',rel:0,wmode:'opaque'},videoId:$(this).data('youtube-video-id'),events:{onReady:videoReady,onStateChange:videoStateChange,onError:videoError}});}else{startPlaylist();}});function videoReady(e){$(document).trigger('onYouTubeReady',e);}
function videoStateChange(e){$(document).trigger('onYouTubeStateChange',e);}
function videoError(e){$(document).trigger('onYouTubeError',e);}
function startPlaylist(){youTubePlayer=new YT.Player($('#media-modal .modal-video-replace').get(0),{host:'https://www.youtube-nocookie.com',playerVars:{autoplay:1,theme:'dark',color:'black',rel:0,wmode:'opaque'},events:{onReady:playlistReady,onStateChange:playlistStateChange,onError:playlistError}});}
function playlistReady(e){var playlist=_.pluck(_youTubeVideos,'id');var startVideo=$('#media-modal.video-content').data('youtube-video-id');$('#media-modal .modal-video-playlist').data('youtube-fail-count',0);youTubePlayer.loadPlaylist(playlist.join(','),playlist.indexOf(startVideo));$(document).trigger('onYouTubeReady',e);}
function playlistStateChange(e){var currentVideoIndex;if(e.data===YT.PlayerState.PLAYING){currentVideoIndex=youTubePlayer.getPlaylistIndex();$('#media-modal .modal-video-playlist a').removeClass('now-playing').eq(currentVideoIndex).addClass('now-playing');$('#media-modal .modal-video-details .title').text(_youTubeVideos[currentVideoIndex].title);$('#media-modal .modal-video-details .username').attr('href','https://www.youtube.com/channel/'+_youTubeVideos[currentVideoIndex].channelId).text(_youTubeVideos[currentVideoIndex].username);$('#media-modal .modal-video-details .date').text(_youTubeVideos[currentVideoIndex].timestamp.toDateString());showPlaylistPage(Math.floor(currentVideoIndex/_numVideoThumbs));}
$(document).trigger('onYouTubeStateChange',e);}
function playlistError(e){var failureCount;if(e.data===5){failureCount=$('#media-modal .modal-video-playlist').data('youtube-fail-count');if(failureCount<YOUTUBE_FAILURE_RETRY_COUNT){youTubePlayer.stopVideo();$('#media-modal .modal-video-replace').after('<div class="modal-video-replace"></div>').remove();$('#media-modal .modal-video-playlist').data('youtube-fail-count',failureCount+1);$('#media-modal').data('youtube-video-id',_youTubeVideos[youTubePlayer.getPlaylistIndex()].id);startPlaylist();}}
$(document).trigger('onYouTubeError',e);}
function showPlaylistPage(page){$('#media-modal .modal-video-playlist ul').data('page',page).css('margin-left',(page* -100)+'%');}
function getPlaylistPage(){return $('#media-modal .modal-video-playlist ul').data('page');}
$(document).on('hide.bs.modal','#media-modal.video-content',function(){try{youTubePlayer.stopVideo();}catch(e){}
$('#media-modal .modal-video').empty();_youTubeVideos=null;});$(document).on('click','#media-modal.video-content .modal-video-playlist a',function(){var selectedIndex=$('#media-modal .modal-video-playlist a').index(this);youTubePlayer.playVideoAt(selectedIndex);});$(document).on('click','#media-modal.video-content .playlist-pag-prev, #media-modal.video-content .playlist-pag-next',function(){var newPage,currentPage=getPlaylistPage(),firstPage=0,lastPage=(Math.ceil(_youTubeVideos.length/_numVideoThumbs)-1);if($(this).hasClass('playlist-pag-prev')){newPage=currentPage<=firstPage?lastPage:(currentPage-1);}else{newPage=currentPage>=lastPage?firstPage:(currentPage+1);}
showPlaylistPage(newPage);});window.onYouTubeIframeAPIReady=function(e){_youTubeInitFinished=true;$(document).trigger('onYouTubeIframeAPIReady',e);};}
function setDotCount(numDots){if(numDots>0){_numDots=numDots;}}
function setAutosizeDotBar(options){if(options){var defaults={maxWidth:0.7,dotWidth:1};_dotBarAutosizeSettings=$.extend({},defaults,options);}else{_dotBarAutosizeSettings=null;}}
function setupGroup(options){var defaults={container:null,selector:'a',hidePaginationThumbs:false,permalinkAttribute:null,userIdAttribute:null};var _options=$.extend({},defaults,options);_init();$(_options.container).on('click',_options.selector,function(e){var i,imageInfo=[];var localOptions=$.extend({},_options);var $allItems=$(localOptions.container).find(localOptions.selector);for(i=0;i<$allItems.length;++i){imageInfo.push({imageUrl:$allItems[i].getAttribute('href'),thumbUrl:localOptions.hidePaginationThumbs?null:$allItems.eq(i).find('img').attr('src'),userId:localOptions.userIdAttribute?$allItems[i].getAttribute(localOptions.userIdAttribute):null,permalinkUrl:localOptions.permalinkAttribute?$allItems[i].getAttribute(localOptions.permalinkAttribute):null});}
localOptions.hasPermalinks=Boolean(localOptions.permalinkAttribute);localOptions.hasThumbs=!localOptions.hidePaginationThumbs;localOptions.imageInfo=imageInfo;localOptions.initialItem=$allItems.index(this);showGroup(localOptions);e.preventDefault();});}
function showGroup(options){var defaults={typeName:null,containY:false,centerY:false,hasThumbs:false,hasPermalinks:false,downloadListFunc:null,filterList:null,filterFunc:null,initialItem:0,imageInfo:[]};var i,dotContainerWidth,dotMarkup='',paginationMarkup='';var _options=$.extend({},defaults,options);var dotTemplate=$('#tpl-pagination-dot').html();var filterTemplate=_.template($('#tpl-media-filter-list-item').html());var hasDownloads=(typeof _options.downloadListFunc==='function');var hasFilters=Boolean((_options.filterList&&options.filterList.length>0&&typeof _options.filterFunc==='function'));_init();_imageInfo=_options.imageInfo;$('#mediaModalHeader .mediaType').text(_options.typeName);$('#mediaModalHeader .mediaNum').text(_options.initialItem+1);$('#mediaModalHeader .mediaTotal').text(_options.imageInfo.length);$('#media-modal-image').attr('src',_options.imageInfo[_options.initialItem].imageUrl);$('#mediaModalDownload').toggleClass('hidden',!hasDownloads);$('#mediaModalFilter').toggleClass('hidden',!hasFilters);$('#dotOverflowContainer').empty().width(9999999);$('#paginationImgSlider').empty();$('#paginationImages').toggleClass('hidden',!_options.hasThumbs);for(i=0;i<_options.imageInfo.length;++i){dotMarkup+=dotTemplate;if(_options.hasThumbs){paginationMarkup+='<img src="'+_options.imageInfo[i].thumbUrl+'"/>';}}
$('#dotOverflowContainer').append($(dotMarkup));$('#paginationImgSlider').width(9999999).append($(paginationMarkup));$('#dotOverflowContainer .dot').eq(_options.initialItem).addClass('active');if(_options.hasPermalinks){_originalUrl=window.location.href;_updatePermalink(_options.initialItem);}
if(hasDownloads){_downloadListFunc=_options.downloadListFunc;_updateDownloadList(_options.initialItem);}
if(hasFilters){_filterFunc=_options.filterFunc;$('#mediaModalFilter ul').empty();for(i=0;i<_options.filterList.length;++i){$('#mediaModalFilter ul').append($(filterTemplate({filterId:_options.filterList[i].id,filterTitle:_options.filterList[i].title})));}}
if(_dotBarAutosizeSettings){$(window).on('resize.mediaModal',_autosizeDotBar);_autosizeDotBar();}
dotContainerWidth=$('#paginationDotContainer').width();$('#dotOverflowContainer').css('left',(Math.ceil((_options.initialItem+1)/_numDots)-1)* -dotContainerWidth);$('#media-modal').removeClass().addClass('modal fade image-content');$('#media-modal').toggleClass('contain-y',_options.containY);$('#media-modal').toggleClass('center-y',_options.centerY);$('#media-modal').modal();}
function setupPoster(options){var defaults={container:null,selector:'a'};var _options=$.extend({},defaults,options);_init();$(_options.container).on('click',_options.selector,function(event){showPoster($.extend({},_options,{url:this.getAttribute('href')}));event.preventDefault();});}
function showPoster(options){var defaults={scroll:true,containY:false};var _options=$.extend({},defaults,options);_init();$('#media-modal-image').attr('src',_options.url);$('#media-modal').removeClass().addClass('modal fade image-content');$('#media-modal').toggleClass('full-scroll',_options.scroll);$('#media-modal').toggleClass('full-fixed',!_options.scroll);$('#media-modal').toggleClass('contain-y',_options.containY);$('#media-modal').modal();}
function setTrayThumbCount(thumbsPerPage){if(thumbsPerPage>0){_numVideoThumbs=thumbsPerPage;}}
function findYouTubeId(url){var idSniff=/(?:youtube\.com\/(?:[^/]+\/.+\/|(?:v|e(?:mbed)?)\/|.*[?&]v=)|youtu\.be\/)([^"&?/ ]{11})/i;var matches=url.match(idSniff);if(matches&&matches.length>=2){return matches[1];}else{return null;}}
function setupYouTube(options){if(!globs.wdl.wdlCookDNT){_initYouTube(function(){var defaults={linkSelector:null,defaultVideoID:null};var _options=$.extend({},defaults,options);$(document).on('click',_options.linkSelector,function(event){var videoID;if($(window).width()>=768){event.preventDefault();videoID=findYouTubeId(this.getAttribute('href'))||_options.defaultVideoID;showYouTube({videoId:videoID});}});});}}
function showYouTube(options){if(!globs.wdl.wdlCookDNT){_initYouTube(function(){var defaults={videoId:null,videos:null};var i,playlistTemplate,playlistContents;var _options=$.extend({},defaults,options);var $modal=$('#media-modal');$modal.data('youtube-video-id',_options.videoId);$modal.find('.modal-video').html($('#tpl-youtube-video-default-markup').html());if(_options.videos&&_options.videos.length>0){playlistTemplate=_.template($('#tpl-youtube-playlist-item').html());playlistContents='';for(i=0;i<_options.videos.length;++i){playlistContents+=playlistTemplate(_options.videos[i]);}
_youTubeVideos=_options.videos;$modal.find('.modal-video-playlist ul').html(playlistContents).data('page',0);$modal.find('.modal-video-playlist .playlist-count').text(_options.videos.length);$modal.removeClass().addClass('modal fade video-content playlist');$modal.modal();}else{$modal.removeClass().addClass('modal fade video-content');$modal.modal();}});}}
function isReady(){return _youTubeInitFinished;}
return{setDotCount:setDotCount,setAutosizeDotBar:setAutosizeDotBar,setupGroup:setupGroup,showGroup:showGroup,setTrayThumbCount:setTrayThumbCount,setupYouTube:setupYouTube,showYouTube:showYouTube,setupPoster:setupPoster,showPoster:showPoster,findYouTubeId:findYouTubeId,isReady:isReady};}());

/* end /web-platform/scripts/web-platform/component/media-modal.js*/

/* start /web-platform/scripts/libs/jquery/plugins/jquery.mousewheel.js*/
(function(factory){if(typeof define==='function'&&define.amd){define(['jquery'],factory);}else if(typeof exports==='object'){module.exports=factory;}else{factory(jQuery);}}(function($){var toFix=['wheel','mousewheel','DOMMouseScroll','MozMousePixelScroll'],toBind=('onwheel'in document||document.documentMode>=9)?['wheel']:['mousewheel','DomMouseScroll','MozMousePixelScroll'],slice=Array.prototype.slice,nullLowestDeltaTimeout,lowestDelta;if($.event.fixHooks){for(var i=toFix.length;i;){$.event.fixHooks[toFix[--i]]=$.event.mouseHooks;}}
var special=$.event.special.mousewheel={version:'3.1.9',setup:function(){if(this.addEventListener){for(var i=toBind.length;i;){this.addEventListener(toBind[--i],handler,false);}}else{this.onmousewheel=handler;}
$.data(this,'mousewheel-line-height',special.getLineHeight(this));$.data(this,'mousewheel-page-height',special.getPageHeight(this));},teardown:function(){if(this.removeEventListener){for(var i=toBind.length;i;){this.removeEventListener(toBind[--i],handler,false);}}else{this.onmousewheel=null;}},getLineHeight:function(elem){return parseInt($(elem)['offsetParent'in $.fn?'offsetParent':'parent']().css('fontSize'),10);},getPageHeight:function(elem){return $(elem).height();},settings:{adjustOldDeltas:true}};$.fn.extend({mousewheel:function(fn){return fn?this.bind('mousewheel',fn):this.trigger('mousewheel');},unmousewheel:function(fn){return this.unbind('mousewheel',fn);}});function handler(event){var orgEvent=event||window.event,args=slice.call(arguments,1),delta=0,deltaX=0,deltaY=0,absDelta=0;event=$.event.fix(orgEvent);event.type='mousewheel';if('detail'in orgEvent){deltaY=orgEvent.detail* -1;}
if('wheelDelta'in orgEvent){deltaY=orgEvent.wheelDelta;}
if('wheelDeltaY'in orgEvent){deltaY=orgEvent.wheelDeltaY;}
if('wheelDeltaX'in orgEvent){deltaX=orgEvent.wheelDeltaX* -1;}
if('axis'in orgEvent&&orgEvent.axis===orgEvent.HORIZONTAL_AXIS){deltaX=deltaY* -1;deltaY=0;}
delta=deltaY===0?deltaX:deltaY;if('deltaY'in orgEvent){deltaY=orgEvent.deltaY* -1;delta=deltaY;}
if('deltaX'in orgEvent){deltaX=orgEvent.deltaX;if(deltaY===0){delta=deltaX* -1;}}
if(deltaY===0&&deltaX===0){return;}
if(orgEvent.deltaMode===1){var lineHeight=$.data(this,'mousewheel-line-height');delta*=lineHeight;deltaY*=lineHeight;deltaX*=lineHeight;}else if(orgEvent.deltaMode===2){var pageHeight=$.data(this,'mousewheel-page-height');delta*=pageHeight;deltaY*=pageHeight;deltaX*=pageHeight;}
absDelta=Math.max(Math.abs(deltaY),Math.abs(deltaX));if(!lowestDelta||absDelta<lowestDelta){lowestDelta=absDelta;if(shouldAdjustOldDeltas(orgEvent,absDelta)){lowestDelta/=40;}}
if(shouldAdjustOldDeltas(orgEvent,absDelta)){delta/=40;deltaX/=40;deltaY/=40;}
delta=Math[delta>=1?'floor':'ceil'](delta/lowestDelta);deltaX=Math[deltaX>=1?'floor':'ceil'](deltaX/lowestDelta);deltaY=Math[deltaY>=1?'floor':'ceil'](deltaY/lowestDelta);event.deltaX=deltaX;event.deltaY=deltaY;event.deltaFactor=lowestDelta;event.deltaMode=0;args.unshift(event,delta,deltaX,deltaY);if(nullLowestDeltaTimeout){clearTimeout(nullLowestDeltaTimeout);}
nullLowestDeltaTimeout=setTimeout(nullLowestDelta,200);return($.event.dispatch||$.event.handle).apply(this,args);}
function nullLowestDelta(){lowestDelta=null;}
function shouldAdjustOldDeltas(orgEvent,absDelta){return special.settings.adjustOldDeltas&&orgEvent.type==='mousewheel'&&absDelta%120===0;}}));

/* end /web-platform/scripts/libs/jquery/plugins/jquery.mousewheel.js*/

/* start /web-platform/scripts/libs/jquery/plugins/jquery.jscrollpane.min.js*/
/*!
 * jScrollPane - v2.0.19 - 2013-11-16
 * http://jscrollpane.kelvinluck.com/
 *
 * Copyright (c) 2013 Kelvin Luck
 * Dual licensed under the MIT or GPL licenses.
 */
!function(a,b,c){a.fn.jScrollPane=function(d){function e(d,e){function f(b){var e,h,j,l,m,n,q=!1,r=!1;if(P=b,Q===c)m=d.scrollTop(),n=d.scrollLeft(),d.css({overflow:"hidden",padding:0}),R=d.innerWidth()+tb,S=d.innerHeight(),d.width(R),Q=a('<div class="jspPane" />').css("padding",sb).append(d.children()),T=a('<div class="jspContainer" />').css({width:R+"px",height:S+"px"}).append(Q).appendTo(d);else{if(d.css("width",""),q=P.stickToBottom&&C(),r=P.stickToRight&&D(),l=d.innerWidth()+tb!=R||d.outerHeight()!=S,l&&(R=d.innerWidth()+tb,S=d.innerHeight(),T.css({width:R+"px",height:S+"px"})),!l&&ub==U&&Q.outerHeight()==V)return d.width(R),void 0;ub=U,Q.css("width",""),d.width(R),T.find(">.jspVerticalBar,>.jspHorizontalBar").remove().end()}Q.css("overflow","auto"),U=b.contentWidth?b.contentWidth:Q[0].scrollWidth,V=Q[0].scrollHeight,Q.css("overflow",""),W=U/R,X=V/S,Y=X>1,Z=W>1,Z||Y?(d.addClass("jspScrollable"),e=P.maintainPosition&&(ab||db),e&&(h=A(),j=B()),g(),i(),k(),e&&(y(r?U-R:h,!1),x(q?V-S:j,!1)),H(),E(),N(),P.enableKeyboardNavigation&&J(),P.clickOnTrack&&o(),L(),P.hijackInternalLinks&&M()):(d.removeClass("jspScrollable"),Q.css({top:0,left:0,width:T.width()-tb}),F(),I(),K(),p()),P.autoReinitialise&&!rb?rb=setInterval(function(){f(P)},P.autoReinitialiseDelay):!P.autoReinitialise&&rb&&clearInterval(rb),m&&d.scrollTop(0)&&x(m,!1),n&&d.scrollLeft(0)&&y(n,!1),d.trigger("jsp-initialised",[Z||Y])}function g(){Y&&(T.append(a('<div class="jspVerticalBar" />').append(a('<div class="jspCap jspCapTop" />'),a('<div class="jspTrack" />').append(a('<div class="jspDrag" />').append(a('<div class="jspDragTop" />'),a('<div class="jspDragBottom" />'))),a('<div class="jspCap jspCapBottom" />'))),eb=T.find(">.jspVerticalBar"),fb=eb.find(">.jspTrack"),$=fb.find(">.jspDrag"),P.showArrows&&(jb=a('<a class="jspArrow jspArrowUp" />').bind("mousedown.jsp",m(0,-1)).bind("click.jsp",G),kb=a('<a class="jspArrow jspArrowDown" />').bind("mousedown.jsp",m(0,1)).bind("click.jsp",G),P.arrowScrollOnHover&&(jb.bind("mouseover.jsp",m(0,-1,jb)),kb.bind("mouseover.jsp",m(0,1,kb))),l(fb,P.verticalArrowPositions,jb,kb)),hb=S,T.find(">.jspVerticalBar>.jspCap:visible,>.jspVerticalBar>.jspArrow").each(function(){hb-=a(this).outerHeight()}),$.hover(function(){$.addClass("jspHover")},function(){$.removeClass("jspHover")}).bind("mousedown.jsp",function(b){a("html").bind("dragstart.jsp selectstart.jsp",G),$.addClass("jspActive");var c=b.pageY-$.position().top;return a("html").bind("mousemove.jsp",function(a){r(a.pageY-c,!1)}).bind("mouseup.jsp mouseleave.jsp",q),!1}),h())}function h(){fb.height(hb+"px"),ab=0,gb=P.verticalGutter+fb.outerWidth(),Q.width(R-gb-tb);try{0===eb.position().left&&Q.css("margin-left",gb+"px")}catch(a){}}function i(){Z&&(T.append(a('<div class="jspHorizontalBar" />').append(a('<div class="jspCap jspCapLeft" />'),a('<div class="jspTrack" />').append(a('<div class="jspDrag" />').append(a('<div class="jspDragLeft" />'),a('<div class="jspDragRight" />'))),a('<div class="jspCap jspCapRight" />'))),lb=T.find(">.jspHorizontalBar"),mb=lb.find(">.jspTrack"),bb=mb.find(">.jspDrag"),P.showArrows&&(pb=a('<a class="jspArrow jspArrowLeft" />').bind("mousedown.jsp",m(-1,0)).bind("click.jsp",G),qb=a('<a class="jspArrow jspArrowRight" />').bind("mousedown.jsp",m(1,0)).bind("click.jsp",G),P.arrowScrollOnHover&&(pb.bind("mouseover.jsp",m(-1,0,pb)),qb.bind("mouseover.jsp",m(1,0,qb))),l(mb,P.horizontalArrowPositions,pb,qb)),bb.hover(function(){bb.addClass("jspHover")},function(){bb.removeClass("jspHover")}).bind("mousedown.jsp",function(b){a("html").bind("dragstart.jsp selectstart.jsp",G),bb.addClass("jspActive");var c=b.pageX-bb.position().left;return a("html").bind("mousemove.jsp",function(a){t(a.pageX-c,!1)}).bind("mouseup.jsp mouseleave.jsp",q),!1}),nb=T.innerWidth(),j())}function j(){T.find(">.jspHorizontalBar>.jspCap:visible,>.jspHorizontalBar>.jspArrow").each(function(){nb-=a(this).outerWidth()}),mb.width(nb+"px"),db=0}function k(){if(Z&&Y){var b=mb.outerHeight(),c=fb.outerWidth();hb-=b,a(lb).find(">.jspCap:visible,>.jspArrow").each(function(){nb+=a(this).outerWidth()}),nb-=c,S-=c,R-=b,mb.parent().append(a('<div class="jspCorner" />').css("width",b+"px")),h(),j()}Z&&Q.width(T.outerWidth()-tb+"px"),V=Q.outerHeight(),X=V/S,Z&&(ob=Math.ceil(1/W*nb),ob>P.horizontalDragMaxWidth?ob=P.horizontalDragMaxWidth:ob<P.horizontalDragMinWidth&&(ob=P.horizontalDragMinWidth),bb.width(ob+"px"),cb=nb-ob,u(db)),Y&&(ib=Math.ceil(1/X*hb),ib>P.verticalDragMaxHeight?ib=P.verticalDragMaxHeight:ib<P.verticalDragMinHeight&&(ib=P.verticalDragMinHeight),$.height(ib+"px"),_=hb-ib,s(ab))}function l(a,b,c,d){var e,f="before",g="after";"os"==b&&(b=/Mac/.test(navigator.platform)?"after":"split"),b==f?g=b:b==g&&(f=b,e=c,c=d,d=e),a[f](c)[g](d)}function m(a,b,c){return function(){return n(a,b,this,c),this.blur(),!1}}function n(b,c,d,e){d=a(d).addClass("jspActive");var f,g,h=!0,i=function(){0!==b&&vb.scrollByX(b*P.arrowButtonSpeed),0!==c&&vb.scrollByY(c*P.arrowButtonSpeed),g=setTimeout(i,h?P.initialDelay:P.arrowRepeatFreq),h=!1};i(),f=e?"mouseout.jsp":"mouseup.jsp",e=e||a("html"),e.bind(f,function(){d.removeClass("jspActive"),g&&clearTimeout(g),g=null,e.unbind(f)})}function o(){p(),Y&&fb.bind("mousedown.jsp",function(b){if(b.originalTarget===c||b.originalTarget==b.currentTarget){var d,e=a(this),f=e.offset(),g=b.pageY-f.top-ab,h=!0,i=function(){var a=e.offset(),c=b.pageY-a.top-ib/2,f=S*P.scrollPagePercent,k=_*f/(V-S);if(0>g)ab-k>c?vb.scrollByY(-f):r(c);else{if(!(g>0))return j(),void 0;c>ab+k?vb.scrollByY(f):r(c)}d=setTimeout(i,h?P.initialDelay:P.trackClickRepeatFreq),h=!1},j=function(){d&&clearTimeout(d),d=null,a(document).unbind("mouseup.jsp",j)};return i(),a(document).bind("mouseup.jsp",j),!1}}),Z&&mb.bind("mousedown.jsp",function(b){if(b.originalTarget===c||b.originalTarget==b.currentTarget){var d,e=a(this),f=e.offset(),g=b.pageX-f.left-db,h=!0,i=function(){var a=e.offset(),c=b.pageX-a.left-ob/2,f=R*P.scrollPagePercent,k=cb*f/(U-R);if(0>g)db-k>c?vb.scrollByX(-f):t(c);else{if(!(g>0))return j(),void 0;c>db+k?vb.scrollByX(f):t(c)}d=setTimeout(i,h?P.initialDelay:P.trackClickRepeatFreq),h=!1},j=function(){d&&clearTimeout(d),d=null,a(document).unbind("mouseup.jsp",j)};return i(),a(document).bind("mouseup.jsp",j),!1}})}function p(){mb&&mb.unbind("mousedown.jsp"),fb&&fb.unbind("mousedown.jsp")}function q(){a("html").unbind("dragstart.jsp selectstart.jsp mousemove.jsp mouseup.jsp mouseleave.jsp"),$&&$.removeClass("jspActive"),bb&&bb.removeClass("jspActive")}function r(a,b){Y&&(0>a?a=0:a>_&&(a=_),b===c&&(b=P.animateScroll),b?vb.animate($,"top",a,s):($.css("top",a),s(a)))}function s(a){a===c&&(a=$.position().top),T.scrollTop(0),ab=a;var b=0===ab,e=ab==_,f=a/_,g=-f*(V-S);(wb!=b||yb!=e)&&(wb=b,yb=e,d.trigger("jsp-arrow-change",[wb,yb,xb,zb])),v(b,e),Q.css("top",g),d.trigger("jsp-scroll-y",[-g,b,e]).trigger("scroll")}function t(a,b){Z&&(0>a?a=0:a>cb&&(a=cb),b===c&&(b=P.animateScroll),b?vb.animate(bb,"left",a,u):(bb.css("left",a),u(a)))}function u(a){a===c&&(a=bb.position().left),T.scrollTop(0),db=a;var b=0===db,e=db==cb,f=a/cb,g=-f*(U-R);(xb!=b||zb!=e)&&(xb=b,zb=e,d.trigger("jsp-arrow-change",[wb,yb,xb,zb])),w(b,e),Q.css("left",g),d.trigger("jsp-scroll-x",[-g,b,e]).trigger("scroll")}function v(a,b){P.showArrows&&(jb[a?"addClass":"removeClass"]("jspDisabled"),kb[b?"addClass":"removeClass"]("jspDisabled"))}function w(a,b){P.showArrows&&(pb[a?"addClass":"removeClass"]("jspDisabled"),qb[b?"addClass":"removeClass"]("jspDisabled"))}function x(a,b){var c=a/(V-S);r(c*_,b)}function y(a,b){var c=a/(U-R);t(c*cb,b)}function z(b,c,d){var e,f,g,h,i,j,k,l,m,n=0,o=0;try{e=a(b)}catch(p){return}for(f=e.outerHeight(),g=e.outerWidth(),T.scrollTop(0),T.scrollLeft(0);!e.is(".jspPane");)if(n+=e.position().top,o+=e.position().left,e=e.offsetParent(),/^body|html$/i.test(e[0].nodeName))return;h=B(),j=h+S,h>n||c?l=n-P.horizontalGutter:n+f>j&&(l=n-S+f+P.horizontalGutter),isNaN(l)||x(l,d),i=A(),k=i+R,i>o||c?m=o-P.horizontalGutter:o+g>k&&(m=o-R+g+P.horizontalGutter),isNaN(m)||y(m,d)}function A(){return-Q.position().left}function B(){return-Q.position().top}function C(){var a=V-S;return a>20&&a-B()<10}function D(){var a=U-R;return a>20&&a-A()<10}function E(){T.unbind(Bb).bind(Bb,function(a,b,c,d){var e=db,f=ab,g=a.deltaFactor||P.mouseWheelSpeed;return vb.scrollBy(c*g,-d*g,!1),e==db&&f==ab})}function F(){T.unbind(Bb)}function G(){return!1}function H(){Q.find(":input,a").unbind("focus.jsp").bind("focus.jsp",function(a){z(a.target,!1)})}function I(){Q.find(":input,a").unbind("focus.jsp")}function J(){function b(){var a=db,b=ab;switch(c){case 40:vb.scrollByY(P.keyboardSpeed,!1);break;case 38:vb.scrollByY(-P.keyboardSpeed,!1);break;case 34:case 32:vb.scrollByY(S*P.scrollPagePercent,!1);break;case 33:vb.scrollByY(-S*P.scrollPagePercent,!1);break;case 39:vb.scrollByX(P.keyboardSpeed,!1);break;case 37:vb.scrollByX(-P.keyboardSpeed,!1)}return e=a!=db||b!=ab}var c,e,f=[];Z&&f.push(lb[0]),Y&&f.push(eb[0]),Q.focus(function(){d.focus()}),d.attr("tabindex",0).unbind("keydown.jsp keypress.jsp").bind("keydown.jsp",function(d){if(d.target===this||f.length&&a(d.target).closest(f).length){var g=db,h=ab;switch(d.keyCode){case 40:case 38:case 34:case 32:case 33:case 39:case 37:c=d.keyCode,b();break;case 35:x(V-S),c=null;break;case 36:x(0),c=null}return e=d.keyCode==c&&g!=db||h!=ab,!e}}).bind("keypress.jsp",function(a){return a.keyCode==c&&b(),!e}),P.hideFocus?(d.css("outline","none"),"hideFocus"in T[0]&&d.attr("hideFocus",!0)):(d.css("outline",""),"hideFocus"in T[0]&&d.attr("hideFocus",!1))}function K(){d.attr("tabindex","-1").removeAttr("tabindex").unbind("keydown.jsp keypress.jsp")}function L(){if(location.hash&&location.hash.length>1){var b,c,d=escape(location.hash.substr(1));try{b=a("#"+d+', a[name="'+d+'"]')}catch(e){return}b.length&&Q.find(d)&&(0===T.scrollTop()?c=setInterval(function(){T.scrollTop()>0&&(z(b,!0),a(document).scrollTop(T.position().top),clearInterval(c))},50):(z(b,!0),a(document).scrollTop(T.position().top)))}}function M(){a(document.body).data("jspHijack")||(a(document.body).data("jspHijack",!0),a(document.body).delegate("a[href*=#]","click",function(c){var d,e,f,g,h,i,j=this.href.substr(0,this.href.indexOf("#")),k=location.href;if(-1!==location.href.indexOf("#")&&(k=location.href.substr(0,location.href.indexOf("#"))),j===k){d=escape(this.href.substr(this.href.indexOf("#")+1));try{e=a("#"+d+', a[name="'+d+'"]')}catch(l){return}e.length&&(f=e.closest(".jspScrollable"),g=f.data("jsp"),g.scrollToElement(e,!0),f[0].scrollIntoView&&(h=a(b).scrollTop(),i=e.offset().top,(h>i||i>h+a(b).height())&&f[0].scrollIntoView()),c.preventDefault())}}))}function N(){var a,b,c,d,e,f=!1;T.unbind("touchstart.jsp touchmove.jsp touchend.jsp click.jsp-touchclick").bind("touchstart.jsp",function(g){var h=g.originalEvent.touches[0];a=A(),b=B(),c=h.pageX,d=h.pageY,e=!1,f=!0}).bind("touchmove.jsp",function(g){if(f){var h=g.originalEvent.touches[0],i=db,j=ab;return vb.scrollTo(a+c-h.pageX,b+d-h.pageY),e=e||Math.abs(c-h.pageX)>5||Math.abs(d-h.pageY)>5,i==db&&j==ab}}).bind("touchend.jsp",function(){f=!1}).bind("click.jsp-touchclick",function(){return e?(e=!1,!1):void 0})}function O(){var a=B(),b=A();d.removeClass("jspScrollable").unbind(".jsp"),d.replaceWith(Ab.append(Q.children())),Ab.scrollTop(a),Ab.scrollLeft(b),rb&&clearInterval(rb)}var P,Q,R,S,T,U,V,W,X,Y,Z,$,_,ab,bb,cb,db,eb,fb,gb,hb,ib,jb,kb,lb,mb,nb,ob,pb,qb,rb,sb,tb,ub,vb=this,wb=!0,xb=!0,yb=!1,zb=!1,Ab=d.clone(!1,!1).empty(),Bb=a.fn.mwheelIntent?"mwheelIntent.jsp":"mousewheel.jsp";"border-box"===d.css("box-sizing")?(sb=0,tb=0):(sb=d.css("paddingTop")+" "+d.css("paddingRight")+" "+d.css("paddingBottom")+" "+d.css("paddingLeft"),tb=(parseInt(d.css("paddingLeft"),10)||0)+(parseInt(d.css("paddingRight"),10)||0)),a.extend(vb,{reinitialise:function(b){b=a.extend({},P,b),f(b)},scrollToElement:function(a,b,c){z(a,b,c)},scrollTo:function(a,b,c){y(a,c),x(b,c)},scrollToX:function(a,b){y(a,b)},scrollToY:function(a,b){x(a,b)},scrollToPercentX:function(a,b){y(a*(U-R),b)},scrollToPercentY:function(a,b){x(a*(V-S),b)},scrollBy:function(a,b,c){vb.scrollByX(a,c),vb.scrollByY(b,c)},scrollByX:function(a,b){var c=A()+Math[0>a?"floor":"ceil"](a),d=c/(U-R);t(d*cb,b)},scrollByY:function(a,b){var c=B()+Math[0>a?"floor":"ceil"](a),d=c/(V-S);r(d*_,b)},positionDragX:function(a,b){t(a,b)},positionDragY:function(a,b){r(a,b)},animate:function(a,b,c,d){var e={};e[b]=c,a.animate(e,{duration:P.animateDuration,easing:P.animateEase,queue:!1,step:d})},getContentPositionX:function(){return A()},getContentPositionY:function(){return B()},getContentWidth:function(){return U},getContentHeight:function(){return V},getPercentScrolledX:function(){return A()/(U-R)},getPercentScrolledY:function(){return B()/(V-S)},getIsScrollableH:function(){return Z},getIsScrollableV:function(){return Y},getContentPane:function(){return Q},scrollToBottom:function(a){r(_,a)},hijackInternalLinks:a.noop,destroy:function(){O()}}),f(e)}return d=a.extend({},a.fn.jScrollPane.defaults,d),a.each(["arrowButtonSpeed","trackClickSpeed","keyboardSpeed"],function(){d[this]=d[this]||d.speed}),this.each(function(){var b=a(this),c=b.data("jsp");c?c.reinitialise(d):(a("script",b).filter('[type="text/javascript"],:not([type])').remove(),c=new e(b,d),b.data("jsp",c))})},a.fn.jScrollPane.defaults={showArrows:!1,maintainPosition:!0,stickToBottom:!1,stickToRight:!1,clickOnTrack:!0,autoReinitialise:!1,autoReinitialiseDelay:500,verticalDragMinHeight:0,verticalDragMaxHeight:99999,horizontalDragMinWidth:0,horizontalDragMaxWidth:99999,contentWidth:c,animateScroll:!1,animateDuration:300,animateEase:"linear",hijackInternalLinks:!1,verticalGutter:4,horizontalGutter:4,mouseWheelSpeed:3,arrowButtonSpeed:0,arrowRepeatFreq:50,arrowScrollOnHover:!1,trackClickSpeed:0,trackClickRepeatFreq:70,verticalArrowPositions:"split",horizontalArrowPositions:"split",enableKeyboardNavigation:!0,hideFocus:!1,keyboardSpeed:0,initialDelay:300,speed:30,scrollPagePercent:.8}}(jQuery,this);

/* end /web-platform/scripts/libs/jquery/plugins/jquery.jscrollpane.min.js*/

/* start /web-platform/scripts/web-platform/helpers/parallax.js*/
window.DGC=window.DGC||{};window.DGC.EnableParallax=function(options){'use strict';var _options=_.extend({selector:'.do-parallax'},options);var pageUpdater;var $parallaxPanes;function _updateParallax(){var scrollTop=window.pageYOffset;var windowHeight=window.innerHeight;var windowWidth=window.innerWidth;$parallaxPanes.each(function(i,el){var $el=$(el);if(windowWidth>=768){var $viewport=$(el.getAttribute('data-parallax-viewport'));var viewportTop=$viewport.offset().top-scrollTop;var viewportHeight=$viewport.height();var viewportMinY=-viewportHeight;var viewportMaxY=windowHeight;var scrollFactor=(viewportTop-viewportMinY)/(viewportMaxY-viewportMinY);var scrollRange=viewportHeight+windowHeight;var scrollFactorOffset=scrollFactor-0.5;var boxHeight=$(el).outerHeight();if(scrollFactor<0||scrollFactor>1){return;}
var scrollDrag=1-parseFloat(el.getAttribute('data-parallax-speed')||'0.75');var parallaxCenter=parseFloat(el.getAttribute('data-parallax-center')||'-0.5')*boxHeight;var imageTranslate=parallaxCenter-(scrollRange*scrollFactorOffset*scrollDrag);$el.css('transform','translateY('+imageTranslate+'px)');}else{$el.css('transform','none');}});}
if(/iPhone|iPad|iPod|Android/i.test(navigator.userAgent)===false){$parallaxPanes=$(_options.selector);if($parallaxPanes.length>0){pageUpdater=new DebouncedUpdater({callbacks:[_updateParallax]});$(window).on('scroll resize',pageUpdater.doUpdate.bind(pageUpdater));}}};

/* end /web-platform/scripts/web-platform/helpers/parallax.js*/

/* start /scripts/v4/_pages/game.js*/
$(document).ready(function(){'use strict';var $allPanes=$('#gamePage .game-pane');var $animatedPanes=$('#gamePage .has-animations');DGC.EnableParallax();function _triggerAnimations(){var scrollTop=window.pageYOffset;var windowHeight=window.innerHeight;$animatedPanes.each(function(i,el){var $el=$(el);var boxHeight=$el.height();var boxDocumentY=$el.offset().top;var boxPageY=boxDocumentY-scrollTop;var boxRevealThreshold=parseFloat($el.attr('data-animation-reveal')||'0.4');var boxRevealFactor=((windowHeight-boxPageY)/boxHeight);$el.toggleClass('animate',boxRevealFactor>boxRevealThreshold);});}
function _showActiveNav(){var scrollTop=window.pageYOffset;var windowHeight=window.innerHeight;var $navItems=$('#gamePage .nav-bar a');var activePaneIndex=-1;$allPanes.each(function(i,el){var $el=$(el);var boxHeight=$el.height();var boxDocumentY=$el.offset().top;var boxPageY=boxDocumentY-scrollTop;var boxPageMiddleY=boxPageY+(boxHeight/2);if(boxPageMiddleY<(windowHeight*0.6)){activePaneIndex=i;}});$navItems.removeClass('active');if(activePaneIndex>=0){$navItems.filter('[href=#'+$allPanes.eq(activePaneIndex).attr('id')+']').addClass('active');}}
function _keepNavAboveFooter(){var $navBarList=$('#gamePage .nav-bar ul');var $playFreeBox=$('#gamePage #play-free');var pageMiddle=window.innerHeight/2;var playFreeBoxMiddle=($playFreeBox.position().top+($playFreeBox.height()/2))-window.pageYOffset;if(pageMiddle>playFreeBoxMiddle){$navBarList.css('margin-top',(playFreeBoxMiddle-pageMiddle)+'px');}else{$navBarList.css('margin-top','');}}
var pageUpdater=new DebouncedUpdater({callbacks:[_triggerAnimations,_showActiveNav,_keepNavAboveFooter]});$(window).on('scroll resize',pageUpdater.doUpdate.bind(pageUpdater));$('#gamePage .nav-bar a').on('click',function(e){e.preventDefault();var $this=$(this);var $target=$($this.attr('href'));var targetTop=$target.offset().top;var targetHeight=$target.height();var windowHeight=window.innerHeight;var destScrollTop=targetTop-((windowHeight-targetHeight)/2);$('html, body').animate({scrollTop:destScrollTop},'fast');});$('#gamePage .toggle-details').on('click',function(e){e.preventDefault();$(this).closest('.info').toggleClass('expanded');});if($(window).width()>=768){$('#gamePage .info .contents').jScrollPane({showArrows:true,autoReinitialise:true});}
if(!globs.wdl.wdlCookDNT){SOE.MediaModal.setupYouTube({linkSelector:'.video-link'});}});

/* end /scripts/v4/_pages/game.js*/

/* start /web-platform/scripts/web-platform/component/global-nav.js*/
(function(){'use strict';var nonMember=_.template($('script.non-member').html());var member=_.template($('script.member').html());if(globs.wdl.userLoggedIn){$.ajax({url:'/get-rest-ticket',type:'POST',data:{type:0},context:this,success:function(sid){$.ajax({url:globs.urls.uramAjaxUrl+'/rest/commerce/11/allaccessinfo.action',dataType:'json',data:{'theme':globs.wdl.theme,'responseType':'json','sessionID':sid.successPayload.ticket},success:function(data){var memberData={scGrantDate:data.scGrantDate,scGrantClaimed:data.scGrantClaimed,expirationDate:data.expirationDate};$('.currency-balance-item').each(function(){var $this=$(this);var presenceField=$this.attr('data-currency-presence-field');var balanceField=$this.attr('data-currency-balance-field');if(!presenceField||(Object.hasOwnProperty.call(data,presenceField)&&data[presenceField]===true)){if(Object.hasOwnProperty.call(data,balanceField)){$this.removeClass('hidden').find('.currency-balance').text(SOE.Utils.addSeparators(data[balanceField]));}}});if(!data.akella){if(!data.member){$('#brandBarAllAccess').html(nonMember());}else{$('#brandBarAllAccess').html(member(memberData));$('#brandBarIsMember').text('My');$('#membershipLink').click(function(e){e.preventDefault();window.location.href=globs.urls.membershipMembership;});}
$('ul#brandBarOptions').trigger('reset');}}});}});}else{$('#brandBarAllAccess').html(nonMember());}})();

/* end /web-platform/scripts/web-platform/component/global-nav.js*/

/* start /scripts/v4/components/newsletter-modal.js*/
$(document).ready(function(){'use strict';function emailFieldOK(){return DCUO.validateEmail($('#newsletterModalEmail').val().trim());}
function atLeastOneSystemChosen(){return $('#newsletterModalForm .system-select input:checked').length>0?true:false;}
function allTOSPPChecked(){return $('#newsletterModalForm .tos-pp input:not(:checked)').length===0;}
function updateSubmitButtonState(){$('#newsletterModalSubmit').toggleClass('disabled',!(emailFieldOK()&&atLeastOneSystemChosen()&&allTOSPPChecked()));}
function requestSuccessfulOrUndefined(req){if(req){return(req[0]&&req[0].success)?true:false;}else{return true;}}
function requestHasErrors(req){if(req){return(req[0]&&req[0].errorsList)?true:false;}else{return false;}}
function reduceErrors(list,req){if(req&&req[0]&&req[0].errorsList){return list.concat(req[0].errorsList);}else{return list;}}
$('#nwsltrSignup').on('click',function(){$('#nwsltrModal').modal();$('#nwsltrModal input[type=email]').val('');$('#nwsltrModal input[type=checkbox]').prop('checked',false);updateSubmitButtonState();});$('#newsletterModalForm input').on('keydown keypress change input',function(){updateSubmitButtonState();});$('#newsletterModalSubmit').on('click',function(e){e.preventDefault();if($(this).hasClass('disabled')){return;}
var $newsletterModal=$('#nwsltrModal');var $errorText=$('.result-error',$newsletterModal);var emailAddress=$('#newsletterModalEmail').val().trim();var saves=[];var errorsList;if(emailFieldOK()&&atLeastOneSystemChosen()&&allTOSPPChecked()){$newsletterModal.addClass('working');$('#newsletterModalForm .system-select input:checked').each(function(i,e){var cid=$(e).attr('data-cid');saves.push($.ajax({url:globs.urls.appengRestUrl+'/rest/saveEmail',type:'POST',data:{campaignId:cid,email:emailAddress},dataType:'json',timeout:10000}));});$.when.apply($,saves).done(function(a1,a2,a3){var results;$newsletterModal.removeClass('working');if(saves.length==1){results=[[a1,a2,a3],undefined,undefined];}else{results=[a1,a2,a3];}
if(_.every(results,requestSuccessfulOrUndefined)){$newsletterModal.addClass('success');}else if(_.some(results,requestHasErrors)){$newsletterModal.addClass('error');errorsList=_.uniq(_.reduce(results,reduceErrors,[]));$errorText.html('General problem: '+errorsList.join(', '));}else{$newsletterModal.addClass('error');$errorText.html('A server error occurred. Please try again later.');}}).fail(function(){$newsletterModal.removeClass('working').addClass('error');$errorText.html('A network error occurred. Please try again later.');});}});(function checkNewsletter(param){var checkboxIds={pc:'#newsletterPlatformPC',ps:'#newsletterPlatformPS',ps4:'#newsletterPlatformPS',playstation:'#newsletterPlatformPS',xbox:'#newsletterPlatformXbox',switch:'#newsletterPlatformSwitch'};var $platformCheckbox;if(param&&checkboxIds[param.toLowerCase()]){$platformCheckbox=$(checkboxIds[param.toLowerCase()]);if($platformCheckbox.length>0){$('#nwsltrModal').modal();$platformCheckbox.prop('checked',true);updateSubmitButtonState();DTKR.trackEvent({eventCategory:'modal',eventAction:'open with page',eventLabel:param.toLowerCase()});}}})(globs.urlparameters.newsletter);});

/* end /scripts/v4/components/newsletter-modal.js*/
